1. Technical Field of the Invention
The invention relates generally to communication systems; and, more particularly, it relates to coding of signals within such communication systems.
2. Description of Related Art
Turbo code and variants thereof have been the focus of a great deal of interest in the recent years. One of the primary directives in this area of development has been to try continually to lower the BER (Bit Error Rate) floor for communication channel's having a given SNR (Signal to Noise Ratio). The SNR is oftentimes referred to in terms of the Eb/No (ratio of energy per bit Eb to the Spectral Noise Density No) waterfall part within such a communication system that supports a given BER.
In designing such communication systems and codes employed therein, the ideal goal has been to try reach Shannon's limit in a communication channel. Shannon's limit (sometimes referred to as the communication channel's capacity) may be viewed as being the data rate that is used in a communication channel, having a particular SNR, which will achieve error free transmission through the channel; that is to say, the Shannon's limit is a particular SNR of the communication channel that will support precisely 0.0 BER. In other words, the Shannon limit is the theoretical bound for channel capacity for a given modulation and code rate. The code rate is the ratio of information bits over the total number of bits transmitted within the communication system. In the turbo code context, it is common to refer to code rate (or sometimes referred to simply as “rate”) of n/m, where n is the number of information bits and m is the total number of bits, and where m>n. The difference between m and n typically is referred to as the number of redundancy bits (or parity bits) of an encoded symbol within the signal. Turbo codes typically introduce a degree of redundancy to at least a portion of data prior to transmission through a communication channel. This is oftentimes generally referred to as FEC (Forward Error Correction) coding.
Although there has been much development within the context of turbo code and related coding applications with increased interest recently, this focus has been primarily towards achieving very low BERs across relatively noisy communication channels. As such, these prior art turbo codes largely operate at relatively low rates across relatively noisy communication channels. However, the area of turbo code and variants thereof is still an area of relative immaturity in the technological developmental sense. While there has no doubt been a great amount of progress achieved this far, there still remains a great deal of development and improvement that can be done. This is a technology area where industry-wide consensus has certainly not yet been achieved, and there are many competing viewpoints within the industry as to which direction future developmental effort should be made.
The use of turbo codes providing such low error, while operating at relatively low rates, has largely been in the context of communication systems having a large degree of noise within the communication channel and where substantially error free communication is held at the highest premium. Some of the earliest application arenas for turbo coding were space related where accurate (in fact, ideally, error free) communication is often deemed an essential design criterion.
Relatively recently, the direction of development has moved towards developing terrestrial-applicable and consumer-related applications. Still, the focus of effort here has continued to be achieving low error floors, and not specifically towards reaching higher throughput.
As such, a need continues to exist in the art to develop turbo code related coding that is operable to support higher amounts of throughput while still preserving the relatively low error floors offered within the turbo code context. Whereas the development of turbo code related technology has primarily been directed towards relatively low rates across noisy communication channels, there exists a need to overcome the many hurdles that prevent the application of turbo code to higher data rate applications. In doing so, these higher data rate applications may benefit from the low BERs offered by turbo codes.